package com.csair.platform.cit.service.biz;

import java.util.List;

import com.alibaba.fastjson.JSONObject;
import com.csair.invoice.common.base.vo.JsonResult;
import com.csair.platform.cit.facade.model.CitQueryParam;
import com.csair.platform.cit.facade.model.a202000.CitFzjgFormVo;
import com.csair.platform.cit.facade.model.a202000.CitZjgxxFormVo;
import com.csair.platform.cit.service.entity.CitFzjg;
import com.csair.platform.cit.service.entity.CitFzjgForm;
import com.csair.platform.cit.service.entity.CitZjgxxForm;
import com.csair.platform.usercenter.facade.model.user.UserVo;

/**
 * [分配表数据]服务
 * @author ：caoyu
 * 
 */
public interface IA202000Service {

    /**
     * 获取分支机构期初数据
     * @param param 查询参数
     * @param user 当前用户
     * @Param isJson 是否返回JSON字符串
     * @return 分支机构期初数据
     */
	JsonResult<JSONObject> getInitData(CitQueryParam param, UserVo user, boolean isJson); 
	
	/**
	 * 保存分配表数据
	 * @param zjgxxFormVo 分配表的 总机构信息
	 * @param fzjgxxFormVo 分配表的 分支机构信息
	 */
	void saveData(CitZjgxxFormVo zjgxxFormVo, List<CitFzjgFormVo> fzjgxxFormVo);
	
	/**
	 * 获取分配表数据
	 * @param param 查询参数
	 * @param user 当前用户
	 * @Param isJson 是否返回JSON字符串
	 * @return 分配表数据 
	 */
	JsonResult<JSONObject> query(CitQueryParam param, UserVo user, boolean isJson);
	
	/**
	 * 获取分支机构数据
	 * @param year 年份
	 * @return 分支机构数据 
	 */
	List<CitFzjg> queryFzjg(int year);

	/**
	 * 获取[分配表的总机构信息]
	 * @param taxNo 税号
	 * @param skssqq 税款所属期起
	 * @param skssqz 税款所属期止
	 * @return [分配表的总机构信息]
	 */
	public List<CitZjgxxForm> queryZjgxx(String taxNo, String skssqq, String skssqz);

	/**
	 * 获取[分配表的分支机构信息]
	 * @param zjgxxFormId 主机构id
	 * @return [分配表的分支机构信息]
	 */
	public List<CitFzjgForm> queryFzjgxx(long zjgxxFormId);
}
